Method of controlling a multifunction peripheral via a network with use of an information processing apparatus

ABSTRACT

In a case of a first function of carrying out a cooperative processing in accordance with an instruction from a user of a multifunction peripheral ( 10 ), the user is set as an execution user. In a case of a second function of carrying out a cooperative processing in accordance with an instruction from an application, a user instructed by the application is set as an execution user. Further, in a case where an execution user of a cooperative processing carried out using the first function and an execution user of a cooperative processing carried out using the second function are identical, use history information of the execution user is managed as use history information of a single user. This makes it possible to appropriately manage use history information of a cooperative processing.

TECHNICAL FIELD

The present invention relates to a multifunction peripheral controlsystem in which a multifunction peripheral and an information processingapparatus, which are connected to each other via a communication networkso as to communicate with each other, cooperatively operate together.

BACKGROUND ART

Conventionally, there is known a technique in which (i) a multifunctionperipheral (MFP; multifunction peripheral apparatus) and an informationprocessing apparatus (server apparatus) are connected to each other viaa communication network so as to communicate with each other and (ii)the multifunction peripheral and the information processing apparatuscarry out a cooperative processing in which the multifunction peripheraland the information processing apparatus cooperatively operate together.Typical examples of such a technique encompass (i) a technique in whicha multifunction peripheral obtains print data from an informationprocessing apparatus and carries out a print processing, (ii) atechnique in which an application that operates on an informationprocessing apparatus is used from a multifunction peripheral, and (iii)a technique in which an operation of a multifunction peripheral iscontrolled by an application that operates on an information processingapparatus (see, for example, Patent Literatures 1 through 3).

Further, there is known a multifunction peripheral which manages, foreach user, use history information (e.g., the number of prints, thenumber of scans, the number of transmission times of image data, adestination of image data transmission, etc.) which is based on ahistory of operations conducted by a user who has logged in to themultifunction peripheral. Similarly, there is known an application which(i) operates on an information processing apparatus and (ii) manages,for each user, use history information which is based on a history ofoperations conducted by a user who has logged in to the application.

CITATION LIST Patent Literatures

Patent Literature 1

Japanese Patent Application Publication, Tokukai, No. 2012-008711 A(Publication Date: Jan. 12, 2012)

Patent Literature 2

Japanese Patent Application Publication, Tokukai, No. 2007-174400 A(Publication Date: Jul. 5, 2007)

Patent Literature 3

Japanese Patent Application Publication, Tokukai, No. 2011-124652 A(Publication Date: Jun. 23, 2011)

SUMMARY OF INVENTION Technical Problem

In a case where a cooperative processing is carried out between amultifunction peripheral and an application that operates on aninformation processing apparatus, it is preferable to reflect a resultof the cooperative processing in the use history information managed bythe multifunction peripheral.

For example, in both cases (i) where a user make a print request byoperating an input section of the multifunction peripheral (in a case ofpull printing) and (ii) where the user makes a print request from a webpage of an application that operates on the information processingapparatus (in a case of push printing), it is preferable that recordingof the number of prints, restriction of the number of prints, and thelike be applied to the same account, if the operations carried out inthe respective cases are conducted by the same user. That is, both fromthe viewpoint of user convenience and the viewpoint of user management,use history information of print processings of a single user ispreferably managed such that a sum of the number of prints printed bythe push printing and the number of prints printed by the pull printingis managed as the use history information of the single user.

According to the conventional technique, however, it is impossible tointegrate and manage, as use history information of a user, (i) a resultwhich is obtained in a case where the user operates an input section ofa multifunction peripheral so as to cause a cooperative processing to becarried out and (ii) a result which is obtained in a case where the userlogs in to an application operating on an information processingapparatus and causes a cooperative processing to be carried out.

That is, in a case where the user logs in to the application thatoperates on the information processing apparatus and causes thecooperative processing to be carried out between the application and themultifunction peripheral, the following problems (i) through (iii) mayarise. That is, (i) a use history regarding the cooperative processingis reflected only in use history information managed by the informationprocessing apparatus and not in use history information managed by themultifunction peripheral, (ii) use history information of a user isrecorded under an account which is different from the user's accountmanaged by the multifunction peripheral (that is, the use historyinformation is recorded under an account managed in the application thatoperates on the information processing apparatus and corresponding tothe user's account), and (iii) use history information of a user iserroneously recorded under an account of another user logged in to themultifunction peripheral.

Alternatively, the following operation needs to be conducted in order toreflect, in the use history information managed by the multifunctionperipheral, the result which is obtained in a case where the user (i)logs in to the application that operates on the information processingapparatus and (ii) causes the cooperative processing to be carried out.That is, after instructing the application that operates on theinformation processing apparatus to carry out the cooperativeprocessing, the user needs to conduct, from the input section of themultifunction peripheral, an operation for reflecting the result of thecooperative processing in the use history information managed by themultifunction peripheral.

The present invention has been made in view of the problems. An objectof the present invention is that, in a multifunction peripheral having(i) a first function of carrying out a cooperative processing inaccordance with an instruction inputted by the user from an inputsection of the multifunction peripheral and (ii) a second function ofcarrying out the cooperative processing in accordance with aninstruction from an application that operates on an informationprocessing apparatus which is connected to the multifunction peripheralvia a communication network, use history information of users beappropriately managed for each user, regardless of whether the firstfunction has been used or the second function has been used.

Solution to Problem

A multifunction peripheral in accordance with one aspect of the presentinvention is a multifunction peripheral which carries out a cooperativeprocessing together with an application that operates on an informationprocessing apparatus, the multifunction peripheral and the informationprocessing apparatus being connected to each other via a communicationnetwork so as to communicate with each other, comprising: an inputsection configured to receive an instruction inputted by a user; astorage section configured to store use history information such thatthe use history information is associated with an execution user whocarries out the cooperative processing, the use history informationbeing indicative of a history of use of the cooperative processing; anda control section configured to control an operation of each section ofthe multifunction peripheral, the multifunction peripheral having (i) afirst function of carrying out the cooperative processing in accordancewith an instruction which the input section receives from the user and(ii) a second function of carrying out the cooperative processing inaccordance with an instruction from the application, in a case where thecooperative processing is carried out using the second function, thecontrol section (i) setting, as an execution user who carries out thecooperative processing, a user designated by the application and (ii)carrying out the cooperative processing, in a case where the cooperativeprocessing is carried out using the first function, the control section(i) setting, as an execution user who carries out the cooperativeprocessing, a user inputted or designated from the input section and(ii) carrying out the cooperative processing, in a case where anexecution user who carries out the cooperative processing using thefirst function and an execution user who carries out the cooperativeprocessing using the second function are identical, the control sectioncausing use history information which is stored in the storage sectionand corresponds to the execution user to be updated in accordance with aresult of carrying out the cooperative processing, regardless of whetherthe first function is used or the second function is used.

A multifunction peripheral control system in accordance with one aspectof the present invention is a multifunction peripheral control systemcomprising a multifunction peripheral and an information processingapparatus, the multifunction peripheral and the information processingapparatus being connected to each other via a communication network soas to communicate with each other, the multifunction peripheral and anapplication which operates on the information processing apparatuscarrying out a cooperative processing together, the multifunctionperipheral including: an input section configured to receive aninstruction inputted by a user; and a control section configured tocontrol an operation of each section of the multifunction peripheral,the information processing apparatus including an application processingsection configured to execute the application, the multifunctionperipheral control system further comprising a storage sectionconfigured to store use history information such that the use historyinformation is associated with an execution user who carries out thecooperative processing, the use history information being indicative ofa history of use of the cooperative processing, the multifunctionperipheral control system having (i) a first function of carrying outthe cooperative processing in accordance with an instruction which theinput section receives from the user and (ii) a second function ofcarrying out the cooperative processing in accordance with aninstruction from the application, in a case where the cooperativeprocessing is carried out using the second function, the control section(i) setting, as an execution user who carries out the cooperativeprocessing, a user designated by the application and (ii) carrying outthe cooperative processing, in a case where the cooperative processingis carried out using the first function, the control section (i)setting, as an execution user who carries out the cooperativeprocessing, a user inputted or designated from the input section and(ii) carrying out the cooperative processing, in a case where anexecution user who carries out the cooperative processing using thefirst function and an execution user who carries out the cooperativeprocessing using the second function are identical, the control sectioncausing use history information which is stored in the storage sectionand corresponds to the execution user to be updated in accordance with aresult of carrying out the cooperative processing, regardless of whetherthe first function is used or the second function is used.

A method, in accordance with one aspect of the present invention ofmanaging a multifunction peripheral is a method of managing amultifunction peripheral, the multifunction peripheral carrying out acooperative processing together with an application that operates on aninformation processing apparatus, the multifunction peripheral and theinformation processing apparatus being connected via a communicationnetwork so as to communicate with each other, the multifunctionperipheral including an input section, the multifunction peripheralhaving (i) a first function of carrying out the cooperative processingin accordance with an instruction which the input section receives froma user and (ii) a second function of carrying out the cooperativeprocessing in accordance with an instruction from the application, themethod comprising the step of: (A) storing use history information suchthat the use history information is associated with an execution userwho carries out the cooperative processing, the use history informationbeing indicative of a history of use of the cooperative processing, in acase where the cooperative processing is carried out using the secondfunction, the method (i) setting, as an execution user who carries outthe cooperative processing, a user designated by the application and(ii) carrying out the cooperative processing, in a case where thecooperative processing is carried out using the first function, themethod (i) setting, as an execution user who carries out the cooperativeprocessing, a user inputted or designated from the input section and(ii) carrying out the cooperative processing, in a case where anexecution user who carries out the cooperative processing using thefirst function and an execution user who carries out the cooperativeprocessing using the second function are identical, the step (A)involving causing use history information corresponding to the executionuser to be updated in accordance with a result of carrying out thecooperative processing, regardless of whether the first function is usedor the second function is used.

Advantageous Effects of Invention

According to a multifunction peripheral of the present invention, amultifunction peripheral control system of the present invention, and amethod, of the present invention, of managing a multifunctionperipheral, use history information can be appropriately managedregardless of whether a cooperative processing is carried out by a firstfunction or by a second function. Further, use histories correspondingto a single user can be managed as use history information correspondingto the single user, regardless of whether or not the first function hasbeen used or the second function has been used.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is an explanatory diagram illustrating an arrangement of amultifunction peripheral control system in accordance with oneembodiment of the present invention.

FIG. 2 is a flow chart illustrating a flow of a processing in themultifunction peripheral control system illustrated in FIG. 1.

FIG. 3 is a flow chart illustrating a flow of a processing in themultifunction peripheral control system illustrated in FIG. 1.

FIG. 4 is a flow chart illustrating a flow of a processing in themultifunction peripheral control system illustrated in FIG. 1.

FIG. 5 is an explanatory diagram illustrating an example of anauthentication information input screen displayed on a display sectionof a multifunction peripheral included in the multifunction peripheralcontrol system illustrated in FIG. 1.

FIG. 6 is an explanatory diagram illustrating an example of anapplication selection screen displayed on the display section of themultifunction peripheral included in the multifunction peripheralcontrol system illustrated in FIG. 1.

FIG. 7 is an explanatory diagram illustrating an example of externalapplication information which is stored in the multifunction peripheralof the multifunction peripheral control system illustrated in FIG. 1 andin which each application is associated with corresponding informationindicative of an access destination accessed in a case where eachapplication is selected.

FIG. 8 is an explanatory diagram illustrating an example of anapplication screen displayed on the display section of the multifunctionperipheral of the multifunction peripheral control system illustrated inFIG. 1.

FIG. 9 is an explanatory diagram illustrating an example of a usermanagement table stored in the multifunction peripheral control systemillustrated in FIG. 1.

FIG. 10 is an explanatory diagram illustrating a flow of data in themultifunction peripheral control system illustrated in FIG. 1.

FIG. 11 is an explanatory diagram illustrating a flow of data in themultifunction peripheral control system illustrated in FIG. 1.

FIG. 12 is an explanatory diagram illustrating an example of anapplication screen displayed on a display section of a multifunctionperipheral included in a multifunction peripheral control system inaccordance with another embodiment of the present invention.

FIG. 13 is an explanatory diagram illustrating an example of userinformation stored in the multifunction peripheral control systemillustrated in FIG. 12.

FIG. 14 is a flow chart illustrating a flow of a processing in themultifunction peripheral control system illustrated in FIG. 12.

FIG. 15 is an explanatory diagram illustrating a flow of data in themultifunction peripheral control system illustrated in FIG. 12.

FIG. 16 is an explanatory diagram illustrating an arrangement of amultifunction peripheral control system in accordance with still anotherembodiment of the present invention.

DESCRIPTION OF EMBODIMENTS Embodiment 1

The following description will discuss an embodiment of the presentinvention.

(1-1. Overall Arrangement of Multifunction Peripheral Control System 1)

FIG. 1 is an explanatory diagram illustrating an arrangement of amultifunction peripheral control system 1 in accordance with the presentembodiment. As illustrated in FIG. 1, the multifunction peripheralcontrol system 1 includes a multifunction peripheral (MFP) 10, aninformation processing apparatus (server apparatus) 30, and a terminaldevice 60 which are connected to each other via a communication network50 so as to communicate with each other. Note that the multifunctionperipheral control system 1 can include one or a plurality ofmultifunction peripherals 10, one or a plurality of informationprocessing apparatuses 30, and one or a plurality of terminal devices60.

The communication network 50 may be a wired arrangement, such asIEEE1394, a USB, a power-line carrier, a cable TV line, a telephoneline, an ADSL line, or a serial cable; or a wireless arrangement, suchas an infrared ray (e.g., IrDA or remote control), Bluetooth (registeredtrademark), 802.11 radio, HDR, a mobile phone network, a satellite line,or a terrestrial digital network. Further, the multifunction peripheral10, the information processing apparatus 30, and the terminal device 60are each configured to carry out communication by an HTTP (Hyper TextTransfer Protocol) method, which is a protocol used for communicationbetween a web server and a web browser (e.g., a request and atransmission of a web page). Note, however, that a communicationprotocol to be used among the multifunction peripheral 10, theinformation processing apparatus 30, and the terminal device 60 is notparticularly limited, and another communication protocol can be used.

(1-2. Arrangement of Multifunction Peripheral 10)

The multifunction peripheral 10 is a digital multifunction peripheral oran analog multifunction peripheral which has a function of (i) receivingcontrol information in an HTML format from the information processingapparatus 30 by using HTTP and (ii) carrying out various devicefunctions of the multifunction peripheral 10 on the basis of the controlinformation received from the information processing apparatus 30.Examples of the device functions encompass a scan function, a printfunction, a copy function, a facsimile transmission and receptionfunction, and a communication function. Note, however, that the devicefunctions of the multifunction peripheral 10 are not limited to theabove-mentioned functions. For example, the multifunction peripheral 10can be configured not to include some of the above-mentioned functions,and can be configured to have another device function in place of someof the above-mentioned functions or in addition to the above-mentionedfunctions.

The multifunction peripheral 10 includes an operation section 11, animage reading section 14, an image forming section 15, a storage section16, a communication section 17, and a control section 18. The operationsection 11 includes an input section 12 and a display section 13. Thestorage section 16 includes an authentication information storagesection 16 a, a login user storage section 16 b, a function executionuser storage section 16 c, and a management data storage section 16 d.The control section 18 includes a device control section 19, a browsersection 20, an authentication processing section 21, and a recordingprocessing section 22.

The operation section 11 is a user interface which (i) notifies a userof various types of information in accordance with an instruction of thecontrol section 18, (ii) receives an input inputted by the user, and(iii) transmits the input received to the control section 18. Theoperation section 11 includes (i) the input section (operation inputsection) 12 including various input keys and (ii) the display section 13which is constituted by, for example, an LCD (Liquid Crystal Display) orthe like. Note that the operation section 11 can be a touch panel inwhich the input section 12 and the display section 13 are integral witheach other.

The image reading section 14 (i) includes a scanner and a documentconveying section which conveys a document to a position of the scannerand (ii) carries out a scan function of reading, as image data, (a)text, (b) an image, and the like which are printed on the document. Notethat the image reading section 14 reads an image at a given resolution.

The image forming section 15 is a member for printing, on a recordingsheet such as printing paper, an image (text/photograph/graphic) inaccordance with image data. According to the present embodiment, animage forming apparatus of an electrophotographic printing method isemployed as the image forming section 15. The image forming apparatusincludes a photoreceptor drum, a charging device, an exposure device, adeveloping device, a transfer device, a fixing device, a paper tray, andthe like. Note, however, that the arrangement of the image formingsection 15 is not limited to this. For example, an image formingapparatus of an inkjet printing method or an image forming apparatus ofanother image forming system can be employed. According to the presentembodiment, it is possible to carry out, by using the image formingsection 15, (i) a copy function of printing image data inputted from theimage reading section 14 and (ii) a printer function of printing imagedata inputted from an external device.

The storage section 16 is a storage section which stores various typesof data (operation screen data, various lookup tables, etc.) which arehandled by the multifunction peripheral 10. Further, the storage section16 includes the authentication information storage section 16 a, thelogin user storage section 16 b, the function execution user storagesection 16 c, and the management data storage section 16 d.

The authentication information storage section 16 a stores userauthentication information (e.g., login name and password) of a user tobe given permission to use the multifunction peripheral 10. Note thataccording to the present embodiment, the multifunction peripheral 10 andthe information processing apparatus 30 periodically communicate witheach other so that user authentication information stored in theauthentication information storage section 16 a is updated on the basisof user authentication information stored in an authenticationinformation storage section 36 a (described later) of the informationprocessing apparatus 30. Alternatively, it is possible to employ anarrangement in which, in a case where either one of (i) the userauthentication information stored in the authentication informationstorage section 36 a of the information processing apparatus 30 and (ii)the user authentication information stored in the authenticationinformation storage section 16 a of the multifunction peripheral 10 isupdated, the user authentication information is reflected in the otherone of (i) and (ii). As such, according to the present embodiment, theinformation processing apparatus 30 and the multifunction peripheral 10can use common user authentication information. That is, in a case wherea user who has logged in to the multifunction peripheral 10 by operatingthe input section 12 of the multifunction peripheral 10 is identical toa user who has logged in to an application that operates on theinformation processing apparatus 30, a common account is applied to sucha user.

The login user storage section 16 b stores login information (e.g.,login name) of a user logged in to the multifunction peripheral 10.

The function execution user storage section 16 c stores user informationof a user who has made an execution request (function execution request)for carrying out a cooperative processing in which an application thatoperates on the information processing apparatus 30 and themultifunction peripheral 10 cooperatively operate together. Note thatthe function execution user storage section 16 c can be configured tostore not only user information of the user who has made a functionexecution request to the application that operates on the informationprocessing apparatus 30, but also user information of a user who hasmade a function execution request to (i) an application that operates onanother device connected to the multifunction peripheral 10 via thecommunication network 50 or (ii) an application that operates on themultifunction peripheral 10.

The management data storage section 16 d stores a user management tablefor managing, for each user, use history information (summaryinformation) of the multifunction peripheral 10 (or of a cooperativeprocessing between the multifunction peripheral 10 and an applicationthat operates on the information processing apparatus 30). Note that themanagement data storage section 16 d can be arranged such that the usermanagement table stores, in addition to the use history information,information such as (i) a use-possible condition under which each usercan use a multifunction peripheral (or a cooperative processing betweenthe multifunction peripheral and the application that operates on theinformation processing apparatus 30) and (ii) a use-restrictioncondition under which use of the multifunction peripheral (or thecooperative processing between the multifunction peripheral and theapplication that operates on the information processing apparatus 30)for each user is restricted.

Note that an arrangement of the storage section 16 is not specificallylimited. For example, various conventionally well-known storage sectionssuch as a hard disk can be employed.

The communication section 17 is a communication interface whichcommunicates with an external device such as the information processingapparatus 30 via the communication network 50. According to the presentembodiment, as described above, the communication section 17communicates with the information processing apparatus 30 by using HTTP.

The control section 18 is a computer device constituted by (i) anarithmetic processing section (not shown) such as a CPU or a dedicatedprocessor and (ii) a storage section (not shown) such as a RAM, a ROM,or a HDD. The control section 18 realizes a function of each of thedevice control section 19, the browser section 20, the authenticationprocessing section 21, and the recording processing section 22 byreading out and executing a program, stored in the storage section, forcarrying out various information and various controls.

The device control section 19 controls an operation of each section ofthe multifunction peripheral 10. That is, the device control section 19controls operations and the like of the operation section 11, the imagescanning section 14, the image forming section 15, and the communicationsection 17. For example, the device control section 19 controls theoperation of the image scanning section 14 so as to obtain data of ascan image. Further, the device control section 19 controls theoperation of the image forming section 15 so as to form (output), on arecording material, an image in accordance with image data.

Moreover, the device control section 19 (i) controls the operation ofthe communication section 17 so as to communicate with an externalresource (e.g., the information processing apparatus 30) and (ii)transmits and receives image data, control information, and the like.

The browser section (web browser section) 20 operates in accordance withsoftware for browsing a web page. The browser section 20 causes thedisplay section 13 to display an image in accordance with screen datawhich is supplied from a web server (e.g., a web server section 34 ofthe information processing apparatus 30). Further, in a case where aninstruction to an application on the web server is inputted by a userfrom the input section 12, the browser section 20 notifies the devicecontrol section 19 of information in accordance with the instructioninputted by the user. This causes the device control section 19 to (i)access the application on the web server (e.g., an application section34 of the information processing apparatus 30) via the communicationsection 17, (ii) transmit a screen acquisition request, and (iii)obtain, from the application, screen data in accordance with theinstruction inputted. Note that it is possible to employ, as thesoftware, software generally used of a web browser. Further, it ispossible to employ, as the application on the web server, for example, ahomepage content on the Internet, an external application thatcooperatively operates together with the multifunction peripheral 10, orthe like.

Further, a screen acquisition request from the multifunction peripheral10 to the web server (e.g., the web server section 34 of the informationprocessing apparatus 30) is made by using a GET command or a POSTcommand of an HTTP protocol. The web server transmits, in response, ascreen content in accordance with the screen acquisition requestreceived from the multifunction peripheral 10. In a case where thescreen content is written in HTML, the browser section 20 analyzes thescreen content, generates screen data, and causes the display section 13to display a display screen on the basis of the HTML.

The authentication processing section 21 carries out a userauthentication processing in which (i) user information which isinputted, from the operation section 11, by a user who intends to usethe multifunction peripheral 10 is compared with (ii) userauthentication information which (a) is stored in the authenticationinformation storage section 16 a and (b) is indicative of a user to begiven permission to use the multifunction peripheral 10. As a result ofthe user authentication processing, in a case where the authenticationprocessing section 21 determines to permit the user to use themultifunction peripheral 10, (in a case where the authenticationprocessing section 21 determines that the user information inputted fromthe operation section 11 matches the user authentication informationwhich (a) is stored in advance in the authentication information storagesection 16 a and (b) is indicative of a user to be given permission touse the multifunction peripheral 10), the authentication processingsection 21 notifies the device control section 19 that the user has beenpermitted to use the multifunction peripheral 10. The device controlsection 19 (i) causes the display section 13 to display an operationscreen of the multifunction peripheral 10 so that the multifunctionperipheral 10 becomes available and (ii) controls the recordingprocessing section 22 so that the login user storage section 16 b storesthe user information of the user with respect to whom the userauthentication processing has been carried out (login information of theuser who has logged in).

The recording processing section 22 controls writing of various types ofdata in the storage section 16 and reading of various types of data fromthe storage section 16.

(1-3. Arrangement of Information Processing Apparatus 30)

As illustrated in FIG. 1, the information processing apparatus 30includes a communication section 31, a control section 32, and a storagesection 36. Further, the control section 32 includes a web serversection 33, an application section 34, and an authentication processingsection 35. Further, the storage section 36 includes an authenticationinformation storage section 36 a and a login user storage section 36 b.

The communication section 31 communicates with the multifunctionperipheral 10 and the terminal device 60 via the communication network50. Note that the communication section 31 communicates with themultifunction peripheral 10 and the terminal device 60 by using an HTTPcommunication protocol.

The control section 32 is a computer device constituted by (i) anarithmetic processing section (not shown) such as a CPU or a dedicatedprocessor and (ii) a storage section (not shown) such as a RAM, a ROM,or a HDD. The control section 32 realizes a function of each of the webserver section 33 and the application section 34 by reading out andexecuting a program, stored in the storage section, for carrying outvarious information and various controls.

The web server section 33 operates in accordance with software generallyused of a web server. The web server section 33 has a function of (i)receiving a request (e.g., an HTTP request) from the multifunctionperipheral and the terminal device 60 via the communication section 31,(ii) obtaining, from the application section 34, a file, image data,print data, control information, and the like in accordance with therequest, and (iii) transmitting the file, the image data, the printdata, the control information, and the like to the multifunctionperipheral 10 or the terminal device 60 via the communication section31.

The application section 34 operates in accordance with a predeterminedweb application in response to an instruction from the web serversection 33. That is, the application section 34 operates in accordancewith various web applications that operate on the web server. Examplesof the web application encompass (i) an application that provides ahomepage content on the Internet and (ii) a multifunction peripheralcontrol application that cooperatively operates together with themultifunction peripheral 10 so as to control an operation of themultifunction peripheral 10.

For example, in a case where a request (an HTTP request) from themultifunction peripheral 10 or the terminal device 60 is a transmissionrequest for transmitting a display screen, the application section 34operates in accordance with a display screen transmission application.Specifically, the application section 34 (i) reads out, from a storagesection (not illustrated), HTML data of the display screen which isindicated by the transmission request and (ii) transmits the HTML datato the web server section 33. This causes the data of the display screento be transmitted to a device which has transmitted the request from theweb server section 33 (the multifunction peripheral 10 or the terminaldevice 60). Further, in a case where a request from the multifunctionperipheral 10 or the terminal device 60 is a transmission request fortransmitting print data, the application section 34 operates inaccordance with a print application. Specifically, the applicationsection 34 (i) obtains, from a folder whose name is indicated by thetransmission request, print data whose file name is designated and (ii)transmits the print data to the web server section 33. This causes theprint data to be transmitted from the web server section 33 to a devicewhich carries out a print processing (e.g., the multifunction peripheral10). In a case where the transmission request for transmitting the printdata is made from the terminal device 60, the terminal device 60 (i)includes, in the transmission request, address information of a deviceto which the print data is to be transmitted (e.g., the multifunctionperipheral 10) and (ii) transmits the transmission request to theinformation processing apparatus 30.

Note that the application section 34 can be configured to execute aplurality of types of applications (web applications).

The storage section 36 is a storage section that stores various types ofdata which are handled by the information processing apparatus 30.Further, the storage section 36 includes the authentication informationstorage section 36 a and the login user storage section 36 b.

The authentication information storage section 36 a stores userauthentication information (e.g., login name and password) of a user tobe given permission to use an application (web application) thatoperates on the information processing apparatus 30. Further, the loginuser storage section 36 b stores login information (e.g., login name) ofa user logged in to an application.

Note that an arrangement of the storage section 36 is not particularlylimited. For example, various conventionally well-known storage sectionssuch as a hard disk can be employed as the storage section 36.

(1-4. Arrangement of Terminal Device 60)

The terminal device 60 has a function of accessing the informationprocessing apparatus 30 via the communication network 50 and using anapplication (web application) that operates on the application section34 of the information processing apparatus 30. An arrangement of theterminal device 60 is not particularly limited. For example, a personalcomputer, various mobile terminals (e.g., a mobile phone, a smartphone,a tablet terminal, a PDA (Personal Digital Assistance), a portable gamemachine, etc.) can be employed as the terminal device 60.

As illustrated in FIG. 1, the terminal device 60 includes acommunication section 61, a control section 62, and an operation section65. Further, the control section 62 includes a browser section 63 and adevice control section 64. The operation section 65 includes an inputsection 66 and a display section 67.

The communication section 61 is a communication interface whichcommunicates with an external device such as the information processingapparatus 30 via the communication network 50.

The operation section 65 is a user interface which (i) notifies a userof various types of information in accordance with an instruction of thecontrol section 62, (ii) receives an input inputted by the user, and(iii) transmits the input received to the control section 62. Theoperation section 65 includes (i) the input section (operation inputsection) 66 including various input keys and (ii) the display section 67which is constituted by, for example, an LCD (Liquid Crystal Display) orthe like. Note that the operation section 65 can be a touch panel inwhich the input section 66 and the display section 67 are integral witheach other.

The control section 62 is a computer device constituted by (i) anarithmetic processing section (not shown) such as a CPU or a dedicatedprocessor and (ii) a storage section (not shown) such as a RAM, a ROM,or a HDD. The control section 62 realizes a function of each of thebrowser section (web browser section) 63 and the device control section64 by reading out and executing a program, stored in the storagesection, for carrying out various information and various controls.

The browser section operates in accordance with software for browsing aweb page. The browser section causes the display section 67 to displayan image in accordance with screen data which is supplied from a webserver (e.g., a web server section 34 of the information processingapparatus 30). Further, in a case where an instruction is inputted, withrespect to an application on the web server, by a user from the inputsection 66, the browser section 63 notifies the device control section64 of information in accordance with the instruction inputted by theuser. This causes the device control section 64 to (i) access theapplication on the web server (e.g., the application section 34 of theinformation processing apparatus 30) via the communication section 61,(ii) transmit a screen acquisition request, and (iii) obtain, from theapplication, screen data in accordance with the instruction inputted.Note that it is possible to employ, as the software, software generallyused of a web browser.

Further, a screen acquisition request from the terminal device 60 to theweb server (e.g., the web server section 34 of the informationprocessing apparatus 30) is made by using the GET command or the POSTcommand of the HTTP protocol. The web server transmits, in response, ascreen content in accordance with the screen acquisition requestreceived from the terminal device 60. In a case where the screen contentis written in HTML, the browser section 63 analyzes the screen content,generates screen data, and causes the display section 67 to display adisplay screen on the basis of the HTML.

The device control section 64 controls an operation of each section ofthe terminal device 60. That is, the device control section 64 controlsoperations of the operation section 65 and the communication section 61.For example, the device control section 64 (i) controls the operation ofthe communication section 61 so as to communicate with an externalresource (e.g., the information processing apparatus 30) and (ii)transmits and receives image data, control information, and the like.Further, the device control section 64 controls the operation of thedisplay section 67 to display a display screen in accordance with theimage data. Further, the device control section 64 controls theoperation of the input section 66 to obtain information indicative of acontent of an operation input inputted by the user from the inputsection 66.

(1-5. Overview of Processing in Multifunction Peripheral Control System1)

The following description will discuss an operation of the multifunctionperipheral control system 1. Note that an example is described here inwhich the application section 34 of the information processing apparatus30 executes a print application which (i) transmits print data to themultifunction peripheral 10 and (ii) causes the multifunction peripheral10 to carry out a print processing. Note that a user can use the printapplication (i) by operating the operation section 11 of themultifunction peripheral 10 and (ii) by operating the operation section65 of the terminal device 60.

FIG. 2 is a flow chart illustrating a flow of a processing in themultifunction peripheral control system 1 in a case where a user usesthe print application by operating the operation section 11 of themultifunction peripheral 10. FIG. 3 is a flow chart illustrating a flowof a processing in the multifunction peripheral control system 1 in acase where the user uses the print application by operating theoperation section 65 of the terminal device 60. Further, FIG. 4 is aflow chart illustrating a flow of a processing in the multifunctionperipheral 10 after the multifunction peripheral 10 receives a functionexecution instruction which is transmitted from the informationprocessing apparatus 30 in the processing illustrated in FIG. 2 or 3.

(1-5-1. Processing in a Case where Application is Used fromMultifunction Peripheral)

The following description will discuss, with reference to FIG. 2, aprocessing in a case where a user uses a print application by operatingthe operation section 11 of the multifunction peripheral 10.

As illustrated in FIG. 2, the device control section 19 of themultifunction peripheral 10 (i) reads out screen data of anauthentication information input screen which screen data is stored inthe storage section 16 and (ii) causes the display section 13 to displaythe authentication information input screen (S1). FIG. 5 is anexplanatory diagram illustrating an example of the authenticationinformation input screen. In the example illustrated in FIG. 5, theauthentication information input screen is configured such that (i) auser is prompted to input a login name and a password as userauthentication information and (ii) the user inputs a login name and apassword by operating the input section 12 and then presses a loginbutton so as to input user authentication information.

When the authentication processing section 21 of the multifunctionperipheral 10 receives the user authentication information inputted bythe user via the input section 12 (S2), the authentication processingsection 21 carries out a user authentication processing by makingcomparison between (i) the user authentication information inputted and(ii) user authentication information which (a) is stored in advance inthe authentication information storage section 16 a and (b) isindicative of a user to be given permission to use the multifunctionperipheral 10 (S3). The authentication processing section 21 thendetermines whether or not to permit the user to use the multifunctionperipheral 10 (to log in to the multifunction peripheral 10) (S4).

In a case where the authentication processing section 21 determines inS4 not to permit the user to use the multifunction peripheral 10 (to login to the multifunction peripheral 10), the device control section 19returns to the processing in S1. The multifunction peripheral 10 can beconfigured such that the display section 13 displays, at this point, amessage indicating that the user authentication processing has failed, amessage prompting the user to input again the user authenticationinformation, or the like.

On the other hand, in a case where the authentication processing section21 determines in S4 to permit the user to use the multifunctionperipheral 10 (to log in to the multifunction peripheral 10), therecording processing section 22 causes the login user storage section 16b to store, as login user information, the user information (e.g., loginname) of the user who has logged in to the multifunction peripheral 10(S5). Note that the login user information is stored only while the useris logged in to the multifunction peripheral 10. In a case where alogout processing of the user is carried out, the login user informationis deleted from the login user storage section 16 b.

Further, in a case where the authentication processing section 21determines in S4 to permit the user to use the multifunction peripheral10 (to log in to the multifunction peripheral 10), the browser section20 transmits, to the information processing apparatus 30 via thecommunication section 17, a transmission request for transmitting anapplication selection screen (S6).

When the web server section 33 of the information processing apparatus30 receives the transmission request for transmitting the applicationselection screen, which transmission request has been transmitted fromthe multifunction peripheral 10 (S21), the web server section 33 (i)causes the application section 34 to generate screen data of anapplication selection screen for causing the user of the multifunctionperipheral 10 to select a desired application from among applicationswhich can be used from the multifunction peripheral 10 and (ii)transmits the screen data to the multifunction peripheral 10 (S22).

When the browser section 20 of the multifunction peripheral 10 receivesthe screen data of the application selection screen from the informationprocessing apparatus 30 via the communication section 17, the browsersection 20 controls the display section 13 to display an applicationselection screen in accordance with the screen data received (S7).

FIG. 4 is an explanatory diagram illustrating an example of anapplication selection screen which is displayed on the display section13. In the example illustrated in FIG. 4, three types of applications,that is, applications 1 through 3 are selectable. Note that themultifunction peripheral 10 can be configured such that, for example,information indicative of names and types of the respective applicationsis displayed on the display section 13.

Subsequently, when the browser section 20 receives an instruction toselect an application which instruction has been inputted by the userfrom the input section 12 (S8), the browser section 20 transmits, to theinformation processing apparatus 30 via the communication section 17, astart request (initial screen acquisition request) for starting theapplication selected by the user (S9).

Specifically, according to the present embodiment, for example, asillustrated in FIG. 7, the storage section 16 stores, in advance,external application information in which each of applicationsselectable on the application selection screen is associated withcorresponding information indicative of an access destination(application URL) accessed in a case where the each of the applicationsis selected. Alternatively, the external application information isadded to the screen data of the application selection screen transmittedfrom the information processing apparatus 30 to the multifunctionperipheral 10. The device control section 19 controls the browsersection 20 and the communication section 17 to transmit, on the basis ofthe external application information and to an application URLcorresponding to an application selected by the user, a start requestfor starting the application. Note that the start request for startingthe application (application screen acquisition request) is made byusing the GET command or the POST command of the HTTP protocol.

When the web server section 33 of the information processing apparatus30 receives the start request for starting the application from themultifunction peripheral 10 (S23), the web server section 33 (i)obtains, from the application section 34, screen data (screen content)of an application in accordance with the start request received and (ii)transmits, in response, the screen data to the multifunction peripheral10 (S24).

When the browser section 20 of the multifunction peripheral 10 receivesthe screen data of the application from the information processingapparatus 30, the browser section 20 controls the display section 13 todisplay a screen in accordance with the screen data (S10). For example,in a case where the screen data is written in HTML, the device controlsection 19 causes the browser section 20 to analyze a content of theHTML and generate screen data. The device control section 19 then causesthe display section 13 to display a screen in accordance with the screendata, so that a screen based on the HTML is displayed.

Subsequently, when the browser section 20 receives a function executionrequest inputted by the user via the input section 12 (S11), the browsersection 20 carries out a processing in S71 and the subsequentprocessings in FIG. 4. The processing in S71 and the subsequentprocessings will be described later.

FIG. 8 is an explanatory diagram illustrating an example of anapplication screen which is displayed in the processing in S10. In theexample illustrated in FIG. 8, the print application (i) transmits, tothe multifunction peripheral 10, a display screen which displays a listof print data that a user who is currently logged in to themultifunction peripheral 10 can select as data to be printed from amongprint data stored in a storage section (not illustrated) of theinformation processing apparatus 30 and (ii) causes the display section13 to display the list. Then, in a case where the user selects data tobe printed and press a print button (in a case where the user makes aprint function execution request), the browser section 20 transmits, tothe device control section 19, a transmission request for transmitting aprint request for causing the device control section 19 to request theinformation processing apparatus 30 to give an instruction to print theprint data selected by the user.

Note that the application can be configured such that a Java (registeredtrademark) Script for making a function execution request to the devicecontrol section 19 is embedded in the HTML of the screen data (screencontent) of the application and when a button in the screen is operated,a Java (registered trademark) Script corresponding to the button isexecuted so that the function execution request is transmitted from thebrowser section 20 to the device control section 19.

(1-5-2. Processing in a Case where Application is Used from TerminalDevice)

The following description will discuss, with reference to FIG. 3, aprocessing in a case where a user uses a print application by operatingthe operation section 65 of the terminal device 60.

As illustrated in FIG. 3, when the device control section 64 of theterminal device 60 receives an instruction to select a web applicationmode (S31), the device control section 64 transmits a transmissionrequest for transmitting the authentication information input screen tothe information processing apparatus 30 (S32). Note that according tothe present embodiment, the terminal device 60 has (i) a normal mode inwhich an application that operates on the terminal device 60 itself isused and (ii) a web application mode in which an application (webapplication) that operates on the information processing apparatus 30 isused from the terminal device 60 so that a user can select, from theoperation section 65, which one of the two modes is to be used.

When the web server section 33 of the information processing apparatus30 receives the transmission request for transmitting the authenticationinformation input screen transmitted from the terminal device 60 (S51),the web server section 33 reads out screen data of the authenticationinformation screen from the storage section 36 and transmits, inresponse, the screen data to the terminal device 60 (S52).

When the device control section 64 of the terminal device 60 receivesthe screen data of the authentication information input screen from theinformation processing apparatus 30 (S33), the device control section 64controls the display section 67 to display the authenticationinformation input screen in accordance with the screen data (S34). Notethat the terminal device 60 can be configured such that the screen dataof the authentication information input screen (i) is stored in advancein a storage section (not illustrated) of the terminal device 60 and(ii) is read out so as to be displayed. For example, a screen similar tothat illustrated in FIG. 5 can be employed as the authenticationinformation input screen to be displayed on the display section 67.

Subsequently, when the device control section 64 of the terminal device60 receives user authentication information inputted by the user on theauthentication information input screen via the input section 66 (S35),the device control section 64 transmits, to the information processingapparatus 30, a user authentication processing request including theuser authentication information received (S36).

The authentication processing section 35 of the information processingapparatus 30 (i) carries out a user authentication processing by makingcomparison between (A) the user authentication information included inthe user authentication processing request received from the terminaldevice 60 and (B) user authentication information which (a) is stored inadvance in the authentication information storage section 36 a and (b)is indicative of a user to be given permission to use the application(S54) and (ii) determines whether or not to permit the user to use theapplication (to log in to the application) (S55).

In a case where the authentication processing section 35 determines inS55 not to permit the user to use the application (to log in to theapplication), the web server section 33 transmits an authenticationerror notification to the terminal device 60 (S56) and returns to theprocessing in S53.

On the other hand, in a case where the authentication processing section35 determines in S55 to permit the user to use the application (to login to the application), the web server section 33 (i) transmits anauthentication permission notification to the terminal device 60 (S57)and (ii) causes the login user storage section 36 b to store the userauthentication information of the user who has been given permission tolog in to the application (S58).

When the device control section 64 of the terminal device 60 receives aresult of the user authentication processing returned from theinformation processing apparatus 30 (S37), the device control section 64determines, in accordance with the result of the user authenticationprocessing, whether or not the user has been given permission to use theapplication (S38).

Then, in a case where the device control section 64 determines in S38that the user has not been given permission to use the application (in acase where an authentication error notification is received from theinformation processing apparatus 30), the device control section 64 (i)returns to the processing in S34, (ii) displays again the authenticationinformation input screen, and (iii) prompts the user to input again theuser authentication information.

On the other hand, in a case where the device control section 64determines in S38 that the user has been given permission to log in tothe application, the device control section 19 transmits, to theinformation processing apparatus 30, a transmission request fortransmitting an application selection screen (S39).

When the web server section 33 of the information processing apparatus30 receives the transmission request for transmitting an applicationselection screen which transmission request has been transmitted fromthe multifunction peripheral 60 (S59), the web server section 33 (i)generates screen data of an application selection screen for causing theuser of the multifunction peripheral 60 to select a desired applicationfrom among applications which can be used from the multifunctionperipheral 60 and (ii) transmits the screen data to the multifunctionperipheral 60 (S60).

When the device control section 64 of the terminal device 60 receivesthe screen data of the application selection screen from the informationprocessing apparatus 30 via the communication section 17, the devicecontrol section 64 controls the browser section 63 and the displaysection 67 so that the display section 67 displays an application screenin accordance with the screen data received (S40). For example, anapplication selection screen similar to that illustrated in FIG. 6 canbe employed as the application selection screen.

Subsequently, when the device control section 64 receives an instructionto select an application which instruction has been inputted by the userfrom the input section 66 (S41), the device control section 64transmits, to the information processing apparatus 30 via the browsersection 63 and the communication section 61, a start request(application screen acquisition request) for starting the applicationselected by the user (S42). Specifically, according to the presentembodiment, for example, as illustrated in FIG. 7, the storage section16 stores, in advance, external application information in which each ofapplications selectable on the application selection screen isassociated with corresponding information indicative of an accessdestination (application URL) accessed in a case where the each of theapplications is selected. The device control section 64 (i) controls thebrowser section 63 and the communication section 61, (ii) accesses, onthe basis of the external application information, an application URLcorresponding to the application selected by the user, and (iii)transmits a start request for starting the application to theapplication URL corresponding to the application. Note that the startrequest for starting the application (application screen acquisitionrequest) is made by using the GET command or the POST command of theHTTP protocol.

When the web server section 33 of the information processing apparatus30 receives the start request for starting the application from theterminal device 60 (S61), the web server section 33 in responsetransmits, to the terminal device 60, screen data (screen content) of anapplication in accordance with the start request received (S62).

When the device control section 64 of the terminal device 60 receivesthe screen data of the application from the information processingapparatus 30, the device control section 64 controls the browser section63 and the display section 67 so that the display section 67 displays ascreen in accordance with the screen data (S43). For example, in a casewhere the screen data is written in HTML, the device control section 64causes the browser section 63 to analyze a content of the HTML andgenerate screen data. The device control section 64 then causes thedisplay section 67 to display a screen in accordance with the screendata, so that a screen based on the HTML is displayed.

Subsequently, when the device control section 64 receives a functionexecution request inputted by the user from the input section 66 (S44),the device control section 64 transmits, to the information processingapparatus 30 (a URL corresponding to an application which is currentlyexecuted) via the browser section 63 and the communication section 61,the function execution request inputted from the input section 66 (S45).It is possible to employ an arrangement in which the display section 67displays, at this point, a message indicating that the functionexecution request is being made. Note that, for example, an applicationscreen similar to that illustrated in FIG. 8 can be employed as theapplication screen.

When the web server section 33 of the information processing apparatus30 receives the function execution request from the terminal device 60(S63), the web server section 33 (i) causes an application section 34corresponding to the function execution request received to generate afunction execution request with respect to the multifunction peripheral10 and (ii) transmits the function execution request to themultifunction peripheral 10 (S64). At this time, the application section34 (i) reads out, from the login user storage section 36 b, userinformation of a user who is currently logged in to the application,(ii) includes, in a function execution instruction, the user informationof the user currently logged in as user information of a user who hasmade the function execution request, and (iii) transmits the functionexecution instruction to the multifunction peripheral 10. That is, whenthe multifunction peripheral 10 carries out a function in accordancewith a function execution request, the application section 34 includes,in a function execution instruction, an instruction for causing thefunction to be carried out by setting, as an execution user who carriesout the function, a user who is currently logged in to an application.The function execution instruction includes, for example, (i) a controlcommand for controlling a device function of the multifunctionperipheral 10, (ii) various data (e.g., image data, a transmissiondestination to which data is transmitted, etc.) which are used in themultifunction peripheral 10, and (iii) the like.

The device control section 19 of the multifunction peripheral 10receives the function execution request transmitted from the informationprocessing apparatus 30 (S11 b) and carries out the processing in S71and the subsequent processings in FIG. 4. The processing in S71 and thesubsequent processings will be described later.

(1-5-3. Processing after Multifunction Peripheral Receives FunctionExecution Instruction)

The following description will discuss, with reference to the flow chartillustrated in FIG. 4, a processing to be carried out after themultifunction peripheral 10 receives a function execution request fromthe browser section 20 and the information processing apparatus 30.

When the device control section 19 of the multifunction peripheral 10receives a function execution request in the processing in S11illustrated in FIG. 2 or in S11 b illustrated in FIG. 3 from the browsersection 20 or the information processing apparatus 30, the devicecontrol section 19 determines whether or not the function executionrequest has been made via the operation section 11 (browser section 20)of itself (multifunction peripheral 10) (S71).

For example, the device control section 19 makes the above-mentioneddetermination on the basis of an IP address of a transmission sourcefrom which the function execution request has been received. That is, ina case where the IP address of the transmission source of the functionexecution request is an IP address of the multifunction peripheral 10 ora loopback address, the device control section 19 determines that thefunction execution request has been made via the operation section 11(browser section 20) of the multifunction peripheral 10. On the otherhand, in a case where the IP address of the transmission source of thefunction execution request is neither the IP address of themultifunction peripheral 10 nor the loopback address, the device controlsection 19 determines that the function execution request has been madefrom another device.

In a case where the device control section 19 determines in S71 that thefunction execution request has been made via the operation section 11 ofthe multifunction peripheral 10, the device control section 19 (i) readsout user information which (a) has been stored in the login user storagesection 16 b and (b) is indicative of a user who is currently logged into the multifunction peripheral 10 and (ii) causes the functionexecution user storage section 16 c to store the user information as afunction execution request user (S72).

On the other hand, in a case where the device control section 19determines in S71 that the function execution request has not been madevia the operation section 11 of the multifunction peripheral 10, thedevice control section determines whether or not the function executioninstruction received from the information processing apparatus 30includes information which designates a function execution user(execution user) (S73).

Then, in a case where the device control section 19 determines in S73that the function execution instruction includes the information whichdesignates the function execution user (execution user), the devicecontrol section 19 causes the function execution user storage section 16c to store the user designated by the information as the functionexecution request user (S74).

Note that in a case where the device control section determines in S73that the function execution instruction does not include the informationwhich designates the function execution user (execution user), thedevice control section 19 causes an execution of a function inaccordance with the function execution instruction received from theinformation processing apparatus 30 to be cancelled (S77), and ends theprocessing. Examples of the case where the function executioninstruction does not include the information which designates thefunction execution user (execution user) encompass a case where aprinter driver of the terminal device 60 transmits a print job to themultifunction peripheral 10 via the communication network 50 (in a caseof a normal print processing via a network). In this case, userinformation of an authenticated user is not attached to the print job.Accordingly, it is determined that the function execution instructiondoes not include the information which designates the function executionuser (execution user), and an execution of printing is canceled.

After causing, in S72 or S74, the function execution user storagesection 16 c to store the function execution request user, the devicecontrol section 19 carries out a function in accordance with thefunction execution request such that the function is associated with thefunction execution request user stored in the function execution userstorage section 16 c (such that the function execution request user isset as the execution user) (S75).

For example, in a case where the function execution request is anexecution request for carrying out a function of (i) obtaining printdata from the information processing apparatus 30 (a print applicationthat operates on the application section 34 of the informationprocessing apparatus 30) and (ii) carrying out a print processing, thedevice control section 19 transmits a print data acquisition request tothe information processing apparatus 30, obtains the print data, andcarries out the print processing. The multifunction peripheral 10 can beconfigured such that the display section 13 displays, at this point, amessage indicating that a print processing is currently carried out (afunction is currently carried out). Further, the multifunctionperipheral 10 can be configured such that the device control section 19(i) transmits, to the information processing apparatus 30, anacquisition request for obtaining a control command for controlling thedevice function of the multifunction peripheral 10, (ii) obtains acontrol command, and (iii) controls the device function of themultifunction peripheral 10 in accordance with the control command.

Subsequently, the device control section 19 carries out a summaryprocessing of updating summary information (use history information) ofthe execution user associated with the function in S75 (S76), and endsthe processing.

Note that, according to the present embodiment, the multifunctionperipheral 10 is configured such that in a case where the device controlsection 19 determines in S73 in FIG. 4 that the function executioninstruction received from the information processing apparatus 30 doesnot include the information which designates the function execution user(execution user), the device control section 19 causes the execution ofthe function in accordance with the function execution instructionreceived from the information processing apparatus 30 to be canceled inS77. However, the arrangement of the multifunction peripheral 10 is notlimited to this.

For example, the multifunction peripheral 10 can be configured such thatin a case where the device control section 19 determines in S73 in FIG.4 that the function execution instruction received from the informationprocessing apparatus 30 does not include the information whichdesignates the function execution user (execution user), the devicecontrol section 19 (i) does not carry out the function in accordancewith the function execution instruction, (ii) causes the storage section16 to store (put on hold) tentatively the function executioninstruction, and (iii) carries out the function in accordance with thefunction execution instruction which has been stored in the storagesection 16 since when a given operation was conducted via the operationsection 11 of the multifunction peripheral 10.

Examples of the given operation encompass an operation in which a userwho has logged in to the multifunction peripheral 10 (i) makes arequest, from the operation section 11, to start up a UI (userinterface) for causing a function execution instruction, which has beenput on hold, to be executed and (ii) selects, from the UI, a functionexecution instruction (job) which has been put on hold. As such, even ina case where the application that operates on the application section 34cannot provide user information to the job (e.g., in a case where theapplication does not have a function of providing user information tothe job), it is possible to cause the multifunction peripheral 10 tocarry out a processing in accordance with the function execution requestreceived from the application.

FIG. 9 is an explanatory diagram illustrating an example of a usermanagement table for managing summary information (use historyinformation) of each user. According to the present embodiment, themanagement data storage section 16 d stores the user management table.In a case where a processing is carried out using the device function ofthe multifunction peripheral 10 (or in a case where the cooperativeprocessing is carried out between the multifunction peripheral 10 andthe application that operates on the information processing apparatus30), the device control section 19 controls the recording processingsection 22 to update, in the user management table, the summaryinformation of a user (execution user) who has made the functionexecution request for carrying out the function. For example, in theexample illustrated in FIG. 9, in a case where a user A carries out aprint processing in which the number of prints is 10, 10 is added to thenumber of prints carried out by the user A. That is, since the number ofprints before the function is carried out by the user A is 20 in theexample illustrated in FIG. 9, 10, which is the number of prints havingbeen newly carried out by the user A, is added, so that the number ofprints carried out by the user A is updated to 30.

(1-5-4. Example of Data Transmission and Reception in a Case whereApplication is Used from Multifunction Peripheral)

FIG. 10 is an explanatory diagram illustrating a flow of data in theprocessing in S8 and the subsequent processings in FIG. 2. Asillustrated in FIG. 10, when the browser section 20 receives, in S8 inFIG. 2, the instruction to select an application which instruction hasbeen inputted by the user, the browser section 20 transmits an initialscreen acquisition request (HTTP Page request) to the applicationsection 34 of the information processing apparatus 30 (T1).

When the application section 34 receives the initial screen acquisitionrequest, the application section 34 transmits, in response, screen dataof an initial screen in accordance with the initial screen acquisitionrequest (HTTP Page response) (T2).

The browser section 20 (i) causes the display section 13 to display aninitial screen in accordance with the screen data of the initial screenobtained from the application section 34, (ii) obtains a print request(function execution request) inputted by the user on the initial screenvia the input section 12, and (iii) transmits the print request to thedevice control section 19 (T3).

When the device control section 19 receives the print request (functionexecution request), the device control section 19 transmits a login userinformation request to the recording processing section 22 (T4). Therecording processing section 22 (i) reads out login user information(user information which (a) is stored in the login user storage section16 b and (b) is indicative of a user who is currently logged in to themultifunction peripheral 10) and (ii) transmits the login userinformation to the device control section 19 (T5).

Further, the device control section 19 responds to the browser section20 that the device control section 19 has received the print request(function execution request) (T6). When the browser section 20 receivesthis response, the browser section 20 causes the display section 13 todisplay a message that the function is currently being carried out.

Further, the device control section 19 transmits a print dataacquisition request (function execution request) to the applicationsection 34 of the information processing apparatus 30 (T7). Theapplication section 34 transmits print data (function executioninstruction) in accordance with the print data acquisition request tothe multifunction peripheral 10 (T8).

When the device control section 19 receives the print data transmittedfrom the information processing apparatus 30, the device control section19 carries out a processing of determining whether or not the processingin S71 in FIG. 4, that is, the print request (function executionrequest) corresponding to the print data (function executioninstruction) has been made via the operation section 11 of themultifunction peripheral 10.

Then, since the print request has been made via the operation section 11of the multifunction peripheral 10 in the example illustrated in FIG.10, the print processing is carried out as illustrated in S72 in FIG. 4so that a user who is currently logged in to the multifunctionperipheral (a user corresponding to a user of the login user informationobtained in T5) is set as the execution user. Note that in the exampleillustrated in FIG. 10, the login user information is obtained beforethe print data acquisition request is transmitted to the applicationsection 34. However, a timing when the login user information isobtained is not limited to this. It is also possible to obtain the loginuser information as needed after the print data is obtained.

Subsequently, the device control section 19 notifies, to the recordingprocessing section 22, summary information in which a result of theprint processing is taken into consideration (T9). The recordingprocessing section 22 (i) updates the summary information which (a) isstored in the storage section 16 and (b) is indicative of the executionuser and (ii) transmits, to the device control section 19 in response, anotification that the update of the summary information is complete(T10).

(1-5-5. Example of Data Transmission and Reception in a Case whereApplication is Used from Terminal Device)

FIG. 11 is an explanatory diagram illustrating a flow of data in theprocessing in S44 and the subsequent processings in FIG. 3. Asillustrated in FIG. 11, when the device control section 64 of theterminal device 60 receives, in S44 in FIG. 3, the instruction to selectan application which instruction has been inputted from the user, thedevice control section 64 transmits a print request (function executionrequest) to the application section 34 of the information processingapparatus 30 via the browser section 63 (T11). The application section34 (i) transmits, to the terminal device 60, a notification that theprint request has been received (T12) and (ii) transmits the printrequest to the multifunction peripheral 10 (T13). When the devicecontrol section 19 of the multifunction peripheral 10 receives the printrequest from the application section 34, the device control section 19(i) obtains login user information (user information of a user logged into the application) included in the print request and (ii) transmits aprint data acquisition request to the application section 34 (T14). Whenthe application section receives the print data acquisition request, theapplication section 34 transmits print data in accordance with the printdata acquisition request to the multifunction peripheral 10 (T15).

When the device control section 19 receives the print data transmittedfrom the information processing apparatus 30, the device control section19 carries out the processing in S71 in FIG. 4, that is, a processing todetermine whether or not the print request (function execution request)corresponding to the print data (function execution instruction) hasbeen carried out via the operation section 11 of the multifunctionperipheral 10.

Then, since the print request has been made via the operation section 65of the terminal device 60 in the example illustrated in FIG. 11, theprint processing is carried out as illustrated in S74 in FIG. 4 so thatthe user who is currently logged in to the application (the usercorresponding to the user of the login user information included in theprint request obtained in T13) is set as the execution user.

Subsequently, the device control section 19 notifies, to the recordingprocessing section 22, summary information in which a result of theprint processing is taken into consideration (T16). The recordingprocessing section 22 (i) updates the summary information which (a) isstored in the storage section 16 and (b) is indicative of the executionuser and (ii) transmits, to the device control section 19 in response, anotification that the update of the summary information is complete(T17).

As has been described, according to the present embodiment, in a casewhere a user who has made a function execution request is identical to auser who has logged in to the multifunction peripheral 10, the user whohas logged in to the multifunction peripheral 10 is set as the executionuser. On the other hand, in a case where the user who has made thefunction execution request is identical to a user who, from the terminaldevice 60, has logged in to the application that operates on theapplication section 34, the user who has logged in to the application isset as the execution user.

This makes it possible to appropriately summarize, for each user, ahistory of use of the multifunction peripheral 10 etc. for each user,regardless of whether the user has logged in via the multifunctionperipheral 10 or the user has logged in via the terminal device 60.Further, after the application that operates on the informationprocessing apparatus 30 is instructed to carry out the cooperativeprocessing, it is unnecessary to conduct, with respect to the inputsection 12 of the multifunction peripheral 10, an operation forreflecting a result of the cooperative processing in the use historyinformation managed by the multifunction peripheral 10. This allows animprovement in user convenience.

The present embodiment has discussed a case where the applicationexecuted by the application section 34 of the information processingapparatus 30 is a print application. Note, however, that the applicationexecuted by the application section 34 is not limited to this.

For example, the application can be a scan transmission application inwhich the application section 34 causes the multifunction peripheral 10to carry out a scan processing and a transmission processing oftransmitting scan data. Then, in a case where the user selects the scantransmission application in S8 in FIG. 2, the device control section 19of the multifunction peripheral 10 transmits in S9, in FIG. 2 to theinformation processing apparatus 30, a start request for starting thescan device application. When the application section 34 receives thestart request for starting the scan device application (S23 in FIG. 2),the application section 34 (i) includes, in the application screen ofthe scan transmission application, a scan condition and information on atransmission destination to which the scan data is transmitted and (ii)transmits, in response, the application screen to the multifunctionperipheral 10 (S24 in FIG. 2). Subsequently, in the multifunctionperipheral 10, (i) an execution user is specified by a processingsimilar to that illustrated in FIG. 4 and (ii) the scan processing andthe transmission processing of the scan data are carried out.

According to the present embodiment, for each user, (i) user informationof the user in a case where the user logs in to the multifunctionperipheral 10 via the operation section 12 of the multifunctionperipheral 10 and (ii) user information of the user in a case where theuser logs in to an application that operates on the application section24 are shared by the each user. Note, however, that the presentembodiment is not limited to this. For example, the multifunctionperipheral 10 can be configured such that (i) different user informationis used for a single user in (a) a case where the user logs in to themultifunction peripheral from the operation section 12 of themultifunction peripheral 10 and (b) a case where the user logs in to theapplication that operates on the application section 24 and (ii) in bothcases (a) and (b), use history information of the user is to be managedas use history information of the single user. That is, themultifunction peripheral 10 can be arranged such that (i) userinformation of (a) a user in a case where the user logs in to themultifunction peripheral from the operation section 12 of themultifunction peripheral 10 and user information of (b) a user in a casewhere the user logs in to the application that operates on theapplication section 24 are stored such that the user information of therespective users (a) and (b) are associated with each other and (ii) (A)use history information of the user (a) and (B) use history informationof the user (b) are managed in common between a case in which the userlogs in with the information (A) and a case in which the user logs inwith the information (B).

Embodiment 2

The following description will discuss another embodiment of the presentinvention. Note that for easy explanation, the same reference signs willbe given to a member having the same function as a member described inEmbodiment 1, and descriptions on such a member will be omitted.

In Embodiment 1, when the device control section 19 of the multifunctionperipheral 10 receives a function execution request from the browsersection 20 or the information processing apparatus 30, the devicecontrol section 19 determines whether or not the function executionrequest was made from the operation section 11 (browser section 20) ofitself (the multifunction peripheral 10). In a case where the devicecontrol section 19 determines that the function execution request wasmade from the operation section 11 of the multifunction peripheral 10, auser currently logged in to the multifunction peripheral 10 is set as anexecution user. In contrast, according to the present embodiment, a userdifferent from a user who actually logged in to a multifunctionperipheral 10 and made a function execution request can be designated asan execution user. For example, in a case where a secretary of apresident of a company logs in to the multifunction peripheral 10 andcarries out printing in place of the president, it is possible to (i)carry out printing by setting the president, not the secretary, as theexecution user and (ii) set the president as a person with respect towhom a result of carrying out printing can be summarized.

A device arrangement of the multifunction peripheral control system 1 inaccordance with the present embodiment is identical to that inEmbodiment 1, except that (i) the application screen displayed in theprocessing in S10 in FIG. 2 or the processing in S43 in FIG. 3 is anapplication screen illustrated in FIG. 12 instead of the applicationscreen illustrated in FIG. 8, and (ii) after the multifunctionperipheral 10 receives a function execution request in S11 in FIG. 2 orat S11 b in FIG. 3, the multifunction peripheral 10 carries out theprocessing shown in FIG. 14 in place of the processing shown in FIG. 4.

FIG. 12 is an explanatory diagram illustrating an example of anapplication screen displayed on the display section 13 of themultifunction peripheral or on the display section 67 of the terminaldevice 60 in S10 in FIG. 2 or S43 in FIG. 3. In the example illustratedin FIG. 12, in addition to an item (an item for selecting a function forwhich a function execution request is to be made) for selecting printdata, an item (a list of users available to select as an execution user)for selecting a user with respect to whom results of carrying outprinting are counted in a summary processing is displayed.

Note that when the application section 34 of the information processingapparatus 30 receives an application start request in S23 in FIG. 2 orS61 in FIG. 3, the application section 34 responds by (i) including, inscreen data of the application screen to be transmitted in response tothe request, an item for selecting a user to be designated as anexecution user and (ii) transmitting the screen data.

Specifically, as illustrated in FIG. 13, the information processingapparatus 30 has registered therein users by groups and users belongingto the same group can designate each other as an execution user. Theapplication section 34 of the information processing apparatus 30 (i)extracts users who belong to the same group as the user who has made theapplication start request, (ii) generates an application screen whichincludes an item for selecting a user to be designated as an executionuser out of the extracted users, and (iii) transmits the applicationscreen to the multifunction peripheral 10 or the terminal device 60.

Further, in a case where the application section 34 transmits theapplication screen to the multifunction peripheral 10, the applicationsection 34 includes, in the screen data of the application screen, (oradds, to the screen data of the application screen) information forsetting, as an execution user who carries out a function in accordancewith a function execution request, an execution user selected by theuser by inputting to the application screen an instruction to select theexecution user.

Further, in a case where the application section 34 transmits theapplication screen to the terminal device 60, the application section 34(i) receives, from the terminal device 60 and together with the functionexecution request in S63 in FIG. 3, an execution user selected by theuser by inputting to the application screen an instruction to select theexecution user and (ii), when the application section 34 transmits thefunction execution request to the multifunction peripheral 10 in S64,the application section (i) includes, in the function execution request,information for causing the user designated by the user of the terminaldevice 60 to set a function in accordance with the function executionrequest and (ii) transmits the function to the multifunction peripheral10.

Subsequently, when the browser section 20 of the multifunctionperipheral 10 receives a function execution request in the processing inS11 in FIG. 2 or the processing in S11 b in FIG. 13, the browser section20 carries out the processing shown in FIG. 14.

That is, when the device control section 19 of the multifunctionperipheral 10 receives, from the browser section 20 or the informationprocessing apparatus 30, a function execution request and an instructionto designate an execution user in S11 in FIG. 2 or S11 b in FIG. 3, thedevice control section 19 determines, on the basis of informationincluded in the function execution request received from the informationprocessing apparatus 30 (or information added to the device executionrequest), whether to set, as an execution user, a user whose selectionhas been instructed from the operation section 11 of multifunctionperipheral 10 or set, as an execution user, a user designated by theapplication section 34 (S81).

Then, in a case where the device control section 19 determines in S81 toset, as an execution user, the user whose selection has been instructedvia the operation section 11 of the multifunction peripheral 10, thedevice control section 19 causes the storage section 16 c to store, as afunction execution request user, a user whose selection has beeninstructed from the operation section 11 of the multifunction peripheral10 by a user logged in to the multifunction peripheral 10 in S11 in FIG.2 (S82).

On the other hand, in a case where the device control section 19determines in S81 not to set, as an execution user, the user whoseselection has been instructed from the operation section 11 of themultifunction peripheral 10, (in a case where the device control section19 determines to set, as an execution user, the user designated by theapplication section 34), the device control section 19 determineswhether or not the function execution instruction from the informationprocessing apparatus 30 includes information which designates a functionexecution user (execution user) (S83).

Then, in a case where the device control section 19 determines in S83that the function execution instruction includes the information whichdesignates a function execution user (execution user), the devicecontrol section 19 causes the function execution user storage section 16c to store, as a function execution request user, a user designated bythe information (S84). Note that in a case where the device controlsection 19 determines in S83 that the function execution instructiondoes not include information which designates a function execution user(execution user), the device control section 19 causes the execution ofthe function in accordance with the function execution instructionreceived from the information processing apparatus 30 to be canceled(S87), and ends the processing.

After the device control section 19 causes the function executionrequest user to be stored in the function execution user storage section16 c in S82 or S84, the device control section 19 carries out a functionin accordance with the function execution request such that the functionis associated with the function execution request user stored in thefunction execution user storage section 16 c (such that the functionexecution request user is set as the execution user) (S85).

Subsequently, the device control section 19 carries out a summaryprocessing of updating summary information of the execution userassociated in S85 (S86), and ends the processing.

FIG. 15 is an explanatory diagram illustrating a flow of data in a casewhere the user logged in to the multifunction peripheral 10 makes afunction execution request by designating the execution user from theoperation section 11.

As shown in FIG. 15, when the browser section 20 receives from the useran instruction to select an application in S8 shown in FIG. 2, thebrowser section 20 transmits, to the application section 34 of theinformation processing apparatus 30, an initial screen acquisitionrequest (HTTP Page request) (T21).

When the application section 34 receives the initial screen acquisitionrequest, the application section 34 in response transmits screen data(HTTP Page response) of an initial screen in accordance with the request(T22).

The browser section 20 (i) causes an initial screen to be displayed onthe display section 13 on the basis of the screen data of the initialscreen obtained from the application section 34, (ii) obtains a printrequest (function execution request) and an instruction to designate anexecution user which are inputted to the initial screen by the user fromthe input section 12 and (iii) transmits the print request and theinstruction to the device control section 19 (T23).

When the device control section 19 receives the print request (functionexecution request), the device control section 19 determines, on thebasis of information included in the print request, whether to set, asan execution user, a user whose selection has been instructed by theuser logged in to the multifunction peripheral 10 or to set, as anexecution user, a user designated by the application section 34.Further, the device control section 19 notifies the browser section 20that the device control section 19 has received the print request(function execution request) (T24), and the browser section 20 notifiedcauses the display section 13 to display an indication that a printingprocess is being carried out (the function is being carried out).

Further, the device control section 19 transmits a print dataacquisition request (function execution request) to the applicationsection 34 of the information processing apparatus 30 (T25), and theapplication section 34 transmits, to the multifunction peripheral 10,print data (function execution instruction) in accordance with the printdata acquisition request (T26).

When the device control section 19 receives the print data transmittedfrom the information processing apparatus 30, the device control section19 (i) sets an execution user in accordance with a result ofdetermination of whether to set, as the execution user, a user whoseselection has been instructed by the user logged in to the multifunctionperipheral 10 or to set, as the execution user, a user designated by theapplication section 34 and (ii) carries out printing processing suchthat the printing processing is associated with the execution user set.

Subsequently, the device control section 19 notifies the recordingprocessing section 22 of (i) summary information which takes account ofa result of the print processing and (ii) information indicative of theexecution user (T27), and the recording processing section 22 (i)updates summary information, stored in the storage section 16, on theexecution user and (ii) transmits to the device control section 19 inresponse a notification that the update has been completed (T28).

As described above, according to the present embodiment, a user who logsin to the multifunction peripheral 10 can select an execution user andcause a function of the multifunction peripheral 10 to be carried outsuch that the function is associated with the execution user.

Accordingly, in a case where, for example, a user who logs in to themultifunction peripheral 10 carries out a function in place of anotheruser, a summary processing (e.g., billing processing) can be carried outunder the name of the another user. This allows the summary processingto be carried out appropriately in accordance with the reality of usageof the multifunction peripheral 10.

Embodiment 3

The following description will discuss still another embodiment of thepresent invention. Note that for easy explanation, the same referencesigns will be given to a member having the same function as a memberdescribed in any of the embodiments described above, and descriptions onsuch a member will be omitted.

In Embodiments 1 and 2, a user authentication processing of a user whologs in to the multifunction peripheral 10 is carried out by theauthentication processing section 21 of the multifunction peripheral 10.

In contrast, in the present embodiment, a user authentication processingof a user who logs in to the multifunction peripheral 10 is carried outby an authentication server 80 which is connected to the multifunctionperipheral 10 via the communication network 50 so as to communicate withthe multifunction peripheral 10.

FIG. 16 is an explanatory diagram illustrating an example of anarrangement of the multifunction peripheral control system 1 inaccordance with the present embodiment. In the example illustrated inFIG. 16, the authentication server 80 is connected to the communicationnetwork 50 in addition to the multifunction peripheral 10, theinformation processing apparatus 30, and the terminal device 60.Further, the authentication processing section 21 and the authenticationinformation storage section 16 a in the multifunction peripheral 10illustrated in FIG. 1 and the authentication processing section 35 andthe authentication information storage section 36 a in the informationprocessing apparatus 30 illustrated in FIG. 1 are omitted, and anauthentication processing section 83 and an authentication informationstorage section 86, which carry out functions of the authenticationprocessing section 21, the authentication information storage section 16a, the authentication processing section 35, and the authenticationinformation storage section 36 a are included in the authenticationserver 80.

The authentication server 80 includes a communication section 81, acontrol section 82, and a storage section 85. The control section 82includes the authentication processing section 83 and a user managementsection 84. The storage section 85 includes the authenticationinformation storage section 86 and a management table storage section87.

The communication section 81 is a communication interface which carriesout communication with external devices, such as the multifunctionperipheral 10, the information processing apparatus 30, and the terminaldevice 60, via the communication network 50.

The control section 82 is a computer device constituted by an arithmeticprocessing section (not shown) such as a CPU or a dedicated processorand a storage section (not shown) such as a RAM, a ROM, or a HDD. Thecontrol section 82 realizes a function of each of the authenticationprocessing section 83 and the user management section 84 by reading outand executing a program, stored in the storage section, for carrying outvarious information and various controls.

The authentication information storage section 86 stores userauthentication information (e.g., a login name and a password) on a userto be given permission to use the multifunction peripheral 10. Theauthentication information storage section 86 stores user authenticationinformation (e.g., a login name and a password) of a user to be givenpermission to use an application executed on the application section 34.

Note that it is possible to employ an arrangement in which theauthentication server 80 carries out a user authentication processingwith respect to a plurality of multifunction peripherals connected tothe multifunction peripheral control system 1. In this case, theauthentication information storage section 86 may store, for each of theplurality of multifunction peripherals, user authentication informationof a user to be given permission to use the each of the plurality ofmultifunction peripherals. Similarly, it is possible to employ anarrangement in which the authentication server 80 carries out a userauthentication processing with respect to a plurality of applications(web applications) executed in the multifunction peripheral controlsystem 1. In this case, the authentication information storage section86 may store, for each of the plurality of applications, userauthentication information of a user to be given permission to use theeach of the plurality of applications. Or alternatively, userauthentication information common to the plurality of multifunctionperipherals and/or the plurality of applications may be used as userauthentication information of each user, so that each user can log inusing the user authentication information that is common to theplurality of multifunction peripherals and/or the plurality ofapplications.

In a case where the authentication processing section 83 carries out auser authentication processing of a user who intends to use themultifunction peripheral 10, the authentication processing section 83(i) carries out a user authentication processing in which userinformation inputted from the operation section 11 by a user who intendsto use the multifunction peripheral 10 is compared with userauthentication information, stored in the authentication informationstorage section 86, on a user to be given permission to use themultifunction peripheral 10 and (ii) transmits a result of the userauthentication processing to the multifunction peripheral 10. Note thatthe user information inputted from the operation section by the user whointends to use the multifunction peripheral 10 is transmitted by thedevice control section of the multifunction peripheral 10 from thecommunication section 17 to the authentication server 80. Further, in acase where it is determined by the user authentication processing thatthe user is to be given permission to use the multifunction peripheral10, the device control section 19 of the multifunction peripheral 10 (i)causes an operation screen of the multifunction peripheral 10 to bedisplayed on the display section 13 so as to make the multifunctionperipheral 10 available and (ii) causes the login user storage section16 b to store user information (login information of the user who haslogged in) of the user whose user authentication processing has beencarried out.

Further, in a case where the authentication processing section 83carries out a user authentication processing of a user who intends touse an application executed in the application section 34, theauthentication processing section 83 (i) carries out a userauthentication processing in which user information inputted from theoperation section 65 of the terminal device by the user who intends touse the application is compared with user authentication information,stored in the authentication information storage section 86, of a userto be given permission to use the application and (ii) transmits aresult of the user authentication processing to the terminal device 60.

Note that the user information inputted from the operation section 65 bythe user who intends to use the application is transmitted by the devicecontrol section 64 of the terminal device 60 from the communicationsection 17 to the authentication server 80. Further, in a case where itis determined by the user authentication processing that the user is tobe given permission to use the application, the device control section64 of the terminal device 60 (i) causes an operation screen of theapplication to be displayed on the display section 67 so as to make theapplication available and (ii) causes the login user storage section 36b to store user information (login information of the user who haslogged in) of the user whose user authentication processing has beencarried out.

The management table storage section 87 stores, for each user, (i) usehistory information, for each user, of the multifunction peripheral 10and/or an application (an application which operates in the applicationsection 34) (e.g., the accumulated total number of prints, accumulatedtotal number of scans, the number of transmission times of image data,storage capacity for image data) and use-possible condition information(e.g., an upper limit of the number of printable sheets, an upper limitof the number of scans, an upper limit of the number of image datatransmission times, an upper limit of the image data storage capacity,and the like).

The user management section 84 (i) obtains, from the multifunctionperipheral 10, use history information of the multifunction peripheral10 and/or the application (e.g., information on the number of prints,the execution user, etc.) and (ii) updates information related to theuser and stored in the management table storage section 87.

Further, in a case where the user management section 84 receives, fromthe multifunction peripheral 10 or the terminal device 60, an inquiry asto whether or not a function execution request made by a user can becarried out, the user management section 84 (i) determines, on the basisof (a) a content of the function execution request made by the user and(b) use-possible condition information stored in the management tablestorage section 87, whether or not a processing can be carried out inaccordance with the function execution request and (ii) responds to themultifunction peripheral 10 or the terminal device 60.

(Example of Program)

In each of the embodiments described above, the control section 18 ofthe multifunction peripheral 10, the control section 32 of theinformation processing apparatus 30, the control section 62 of theterminal device 60, and the control section 82 of the authenticationserver 80 may each be (i) realized by hardware using a logic circuitprovided on an integrated circuit (IC chip) or (ii) realized by softwareas executed by a CPU (Central Processing Unit).

In the latter case, the multifunction peripheral 10, the informationprocessing apparatus 30, the terminal device 60, and the authenticationserver 80 each includes: a CPU that executes instructions of a programthat realizes the foregoing functions; ROM (Read Only Memory) storingthe program; RAM (Random Access Memory) that develops the program; astorage device (recording medium) storing the program and various data;and the like. The object of the present invention can be achieved byloading, to each of the multifunction peripheral 10, the informationprocessing apparatus 30, the terminal device 60, and the authenticationserver 80, the recording medium, in which program code (an executableprogram, an intermediate code program, and a source program) of thecontrol program (software for implementing the functions) of each of themultifunction peripheral 10, the information processing apparatus 30,the terminal device 60, and the authentication server 80 and (ii)causing the computer (or a CPU or an MPU) to read out and execute theprogram code recorded in the recording medium.

A non-transitory tangible medium, for example, a tape such as a magnetictape or a cassette tape; a disk including (i) a magnetic disk such as aFloppy® disk or a hard disk and (ii) an optical disc such as a CD-ROM,an MO, an MD, a DVD, or a CD-R; a card such as an IC card (including amemory card) or an optical card; a semiconductor memory such as a maskROM, an EPROM, an EEPROM®, or a flash ROM; a logic circuit such as a PLD(Programmable Logic Device) or an FPGA (Field Programmable Gate Array);or the like, can be used as the recording medium.

Further note that the multifunction peripheral 10, the informationprocessing apparatus 30, the terminal device 60, and the authenticationserver 80 can be configured so as to be capable of being connected to acommunications network via which the program code is loaded to themultifunction peripheral 10, the information processing apparatus 30,the terminal device 60, and the authentication server 80. Thecommunications network is not limited to a specific one as long as it iscapable of transmitting a program code. The communications network canbe, for example, an internet, an intranet, an extranet, a LAN, an ISDN,a VAN, a CATV communications network, a virtual private network, atelephone network, a mobile telecommunications network, a satellitecommunication network or the like. A transmission medium thatconstitutes the communications network is also not limited to a specificone as long as it is capable of transmitting a program code. Theexamples of the transmission medium encompass (i) wired communicationssuch as IEEE1394, USB, a power-line carrier, a CATV line, a telephoneline, or ADSL (Asymmetric Digital Subscriber Line) and (ii) wirelesscommunications such as infrared communication by means of IrDA or remotecontrol, Bluetooth®, IEEE802.11 wireless, HDR (High Data Rate), NFC(Near Field Communication), DLNA (Digital Living Network Alliance), amobile phone network, a satellite circuit, or a terrestrial digitalnetwork. Note that the present invention can be realized also by meansof a computer data signal embedded in a carrier wave, which computerdata signal is obtained by embodying the program code in electronictransmission.

[Conclusion]

A multifunction peripheral in accordance with a first aspect of thepresent invention is a multifunction peripheral which carries out acooperative processing together with an application that operates on aninformation processing apparatus, the multifunction peripheral and theinformation processing apparatus being connected to each other via acommunication network so as to communicate with each other, comprising:an input section configured to receive an instruction inputted by auser; a storage section configured to store use history information suchthat the use history information is associated with an execution userwho carries out the cooperative processing, the use history informationbeing indicative of a history of use of the cooperative processing; anda control section configured to control an operation of each section ofthe multifunction peripheral, the multifunction peripheral having (i) afirst function of carrying out the cooperative processing in accordancewith an instruction which the input section receives from the user and(ii) a second function of carrying out the cooperative processing inaccordance with an instruction from the application, in a case where thecooperative processing is carried out using the second function, thecontrol section (i) setting, as an execution user who carries out thecooperative processing, a user designated by the application and (ii)carrying out the cooperative processing, in a case where the cooperativeprocessing is carried out using the first function, the control section(i) setting, as an execution user who carries out the cooperativeprocessing, a user inputted or designated from the input section and(ii) carrying out the cooperative processing, in a case where anexecution user who carries out the cooperative processing using thefirst function and an execution user who carries out the cooperativeprocessing using the second function are identical, the control sectioncausing use history information which is stored in the storage sectionand corresponds to the execution user to be updated in accordance with aresult of carrying out the cooperative processing, regardless of whetherthe first function is used or the second function is used.

According to the arrangement, in a case where the control sectioncarries out the cooperative processing using the second function, thecontrol section (i) sets, as an execution user who carries out thecooperative processing, a user designated by the application and (ii)carries out the cooperative processing, and in a case where the controlsection carries out the cooperative processing using the first function,the control section (i) sets, as an execution user who carries out thecooperative processing, a user inputted or designated from the inputsection and (ii) caries out the cooperative processing. In accordancewith a result of carrying out the cooperative processing, the controlsection updates use history information which is stored in the storagesection and corresponds to an execution user of the cooperativeprocessing. This makes it possible to appropriately manage use historyinformation regardless of whether the cooperative processing has beencarried out by the first function or by the second function.

Further, in a case where an execution user of the cooperative processingcarried out using the first function and an execution user of thecooperative processing carried out using the second function areidentical, the control section manages, as use history informationcorresponding to a single user, use history information corresponding tothe execution user, regardless of whether the first function has beenused or the second function has been used. Accordingly, use historiescorresponding to a single user can be managed as use history informationcorresponding to the single user, regardless of whether the firstfunction has been used or the second function has been used.

In a second aspect of the present invention, the multifunctionperipheral in accordance with the first aspect of the present inventionis arranged such that a case where the cooperative processing is carriedout using the first function, the control section sets, as an executionuser who carries out the cooperative processing, a user who gives, fromthe input section, an instruction to carry out the cooperativeprocessing.

In a third aspect of the present invention, the multifunction peripheralin accordance with the second aspect of the present invention isarranged such that the multifunction peripheral further comprises afirst authentication processing section configured to carry out, withrespect to a user who intends to use the multifunction peripheral, auser authentication processing so as to give, only to a user to be givenpermission to use the multifunction peripheral, permission to log in tothe multifunction peripheral, in a case where an instruction to carryout the cooperative processing is received from the input section, thecontrol section setting, as an execution user who carries out thecooperative processing, a user who is currently logged in to themultifunction peripheral.

According to each of the arrangements, use history informationcorresponding to a user who has carried out the cooperative processingusing the first function can be appropriately managed.

In a fourth aspect of the present invention, the multifunctionperipheral in accordance with the first aspect of the present inventionis arranged such that in a case where the cooperative processing iscarried out using the first function, the control section sets, as anexecution user who carries out the cooperative processing, a userdesignated by a user who gives, from the input section, an instructionto carry out the cooperative processing.

According to the arrangement, in a case where a user who actually givesthe input section of the multifunctional peripheral an instruction tocarry out a cooperative processing is different from a user who is to beset as an execution user of the cooperative processing, the user whogives the input section the instruction to carry out the cooperativeprocessing can designate, as the execution user, the user to be set. Forexample, in a case where a user B, in place of a user A who intends touse a cooperative processing, gives from the input section of themultifunction peripheral an instruction to carry out the cooperativeprocessing, it is possible to designate, as the execution user, the userA instead of the user B and cause use history information of the user Ato be updated.

In a fifth aspect of the present invention, the multifunction peripheralin accordance with the fourth aspect of the present invention isarranged such that the multifunction peripheral further comprises adisplay section configured to display information to be presented to auser, the control section (i) displaying a list of users who areavailable, to be designated as an execution user who carries out thecooperative processing, by the user who gives from the input section theinstruction to carry out the cooperative processing, and (ii) setting,as the execution user who carries out the cooperative processing, a userselected, from among the users included in the list, by the user whogives the instruction to carry out the cooperative processing.

According to the arrangement, a user who gives from the input section aninstruction to carry out the cooperative processing sets in advanceusers who are available to be designated as an execution user of thecooperative processing. This allows an execution user to be selectedfrom among the users set.

A multifunction peripheral control system in accordance with an aspect Aof the present invention is a multifunction peripheral control systemmultifunction peripheral control system comprising a multifunctionperipheral and an information processing apparatus, the multifunctionperipheral and the information processing apparatus being connected toeach other via a communication network so as to communicate with eachother, the multifunction peripheral and an application which operates onthe information processing apparatus carrying out a cooperativeprocessing together, the multifunction peripheral including: an inputsection configured to receive an instruction inputted by a user; and acontrol section configured to control an operation of each section ofthe multifunction peripheral, the information processing apparatusincluding an application processing section configured to execute theapplication, the multifunction peripheral control system furthercomprising a storage section configured to store use history informationsuch that the use history information is associated with an executionuser who carries out the cooperative processing, the use historyinformation being indicative of a history of use of the cooperativeprocessing, the multifunction peripheral control system having (i) afirst function of carrying out the cooperative processing in accordancewith an instruction which the input section receives from the user and(ii) a second function of carrying out the cooperative processing inaccordance with an instruction from the application, in a case where thecooperative processing is carried out using the second function, thecontrol section (i) setting, as an execution user who carries out thecooperative processing, a user designated by the application and (ii)carrying out the cooperative processing, in a case where the cooperativeprocessing is carried out using the first function, the control section(i) setting, as an execution user who carries out the cooperativeprocessing, a user inputted or designated from the input section and(ii) carrying out the cooperative processing, in a case where anexecution user who carries out the cooperative processing using thefirst function and an execution user who carries out the cooperativeprocessing using the second function are identical, the control sectioncausing use history information which is stored in the storage sectionand corresponds to the execution user to be updated in accordance with aresult of carrying out the cooperative processing, regardless of whetherthe first function is used or the second function is used.

According to the arrangement, in a case where the control sectioncarries out the cooperative processing using the second function, thecontrol section (i) sets, as an execution user who carries out thecooperative processing, a user designated by the application and (ii)carries out the cooperative processing, and in a case where the controlsection carries out the cooperative processing using the first function,the control section (i) sets, as an execution user who carries out thecooperative processing, a user inputted or designated from the inputsection and (ii) caries out the cooperative processing. In accordancewith a result of carrying out the cooperative processing, the controlsection updates use history information which is stored in the storagesection and related to an execution user of the cooperative processing.This makes it possible to appropriately manage use history informationregardless of whether the cooperative processing has been carried out bythe first function or by the second function.

Further, in a case where an execution user of the cooperative processingcarried out using the first function and an execution user of thecooperative processing carried out using the second function areidentical, the control section manages, as use history informationcorresponding to a single user, use history information corresponding tothe execution user, regardless of whether the first function has beenused or the second function has been used. Accordingly, use historiescorresponding to a single user can be managed as use history informationcorresponding to the single user, regardless of whether the firstfunction has been used or the second function has been used.

In an aspect B of the present invention, the multifunction peripheralcontrol system in accordance with the aspect A of the present inventionis arranged such that in a case where the cooperative processing iscarried out using the second function, the application designates, as anexecution user who carries out the cooperative processing, a user whogives the application an instruction to carry out the cooperativeprocessing.

According to the arrangement, use history information corresponding to auser who has carried out the cooperative processing using the secondfunction can be appropriately managed.

A method, in accordance with one aspect of the present invention, ofmanaging a multifunction peripheral is a method of managing amultifunction peripheral, the multifunction peripheral carrying out acooperative processing together with an application that operates on aninformation processing apparatus, the multifunction peripheral and theinformation processing apparatus being connected via a communicationnetwork so as to communicate with each other, the multifunctionperipheral including an input section, the multifunction peripheralhaving (i) a first function of carrying out the cooperative processingin accordance with an instruction which the input section receives froma user and (ii) a second function of carrying out the cooperativeprocessing in accordance with an instruction from the application, themethod comprising the step of: (A) storing use history information suchthat the use history information is associated with an execution userwho carries out the cooperative processing, the use history informationbeing indicative of a history of use of the cooperative processing, in acase where the cooperative processing is carried out using the secondfunction, the method (i) setting, as an execution user who carries outthe cooperative processing, a user designated by the application and(ii) carrying out the cooperative processing, in a case where thecooperative processing is carried out using the first function, themethod (i) setting, as an execution user who carries out the cooperativeprocessing, a user inputted or designated from the input section and(ii) carrying out the cooperative processing, in a case where anexecution user who carries out the cooperative processing using thefirst function and an execution user who carries out the cooperativeprocessing using the second function are identical, the step (A)involving causing use history information corresponding to the executionuser to be updated in accordance with a result of carrying out thecooperative processing, regardless of whether the first function is usedor the second function is used.

According to the method, in a case where the cooperative processing iscarried out using the second function, the method (i) sets, as anexecution user who carries out the cooperative processing, a userdesignated by the application and (ii) carries out the cooperativeprocessing, and in a case where the cooperative processing is carriedout using the first function, the method (i) sets, as an execution userwho carries out the cooperative processing, a user inputted ordesignated from the input section and (ii) caries out the cooperativeprocessing. In accordance with a result of carrying out the cooperativeprocessing, the control section updates use history information which isstored in the storage section and related to an execution user of thecooperative processing. This makes it possible to appropriately manageuse history information regardless of whether the cooperative processinghas been carried out by the first function or by the second function.

Further, in a case where an execution user of the cooperative processingcarried out using the first function and an execution user of thecooperative processing carried out using the second function areidentical, the method manages, as use history information correspondingto a single user, use history information corresponding to the executionuser, regardless of whether the first function has been used or thesecond function has been used. Accordingly, use histories correspondingto a single user can be managed as use history information correspondingto the single user, regardless of whether the first function has beenused or the second function has been used.

The present invention is not limited to the above-described embodimentsbut allows various modifications within the scope of the claims. Inother words, any embodiment derived from a combination of two or moretechnical means appropriately modified within the scope of the claimswill also be included in the technical scope of the present invention.

INDUSTRIAL APPLICABILITY

The present invention is applicable to (i) a multifunction peripheralcontrol system in which a multifunction peripheral and an informationprocessing apparatus, which are connected via a communication network soas to communicate with each other, carry out a cooperative processingand (ii) the multifunction peripheral included in the multifunctionperipheral control system.

REFERENCE SIGNS LIST

-   1: MULTIFUNCTION PERIPHERAL CONTROL SYSTEM-   10: MULTIFUNCTION PERIPHERAL-   11: OPERATION SECTION-   12: INPUT SECTION-   13: DISPLAY SECTION-   16: STORAGE SECTION-   16 a: AUTHENTICATION INFORMATION STORAGE SECTION-   16 b: LOGIN USER STORAGE SECTION-   16 c: FUNCTION EXECUTION USER STORAGE SECTION-   17: COMMUNICATION SECTION-   18: CONTROL SECTION-   19: DEVICE CONTROL SECTION-   20: BROWSER SECTION-   21: AUTHENTICATION PROCESSING SECTION-   22: RECORDING PROCESSING SECTION-   30: INFORMATION PROCESSING APPARATUS-   31: COMMUNICATION SECTION-   32: CONTROL SECTION-   33: WEB SERVER SECTION-   34: APPLICATION SECTION-   35: AUTHENTICATION PROCESSING SECTION-   36: STORAGE SECTION-   36 a: AUTHENTICATION INFORMATION STORAGE SECTION-   36 b: LOGIN USER STORAGE SECTION-   50: COMMUNICATION NETWORK-   60: TERMINAL DEVICE-   61: COMMUNICATION SECTION-   62: CONTROL SECTION-   63: BROWSER SECTION-   64: DEVICE CONTROL SECTION-   65: OPERATION SECTION-   66: INPUT SECTION-   67: DISPLAY SECTION-   80: AUTHENTICATION SERVER-   81: COMMUNICATION SECTION-   82: CONTROL SECTION-   83: AUTHENTICATION PROCESSING SECTION-   84: USER MANAGEMENT SECTION-   85: STORAGE SECTION-   86: AUTHENTICATION INFORMATION STORAGE SECTION-   87: MANAGEMENT TABLE STORAGE SECTION

The invention claimed is:
 1. A method of controlling a multifunctionperipheral via a network with use of an information processingapparatus, the multifunction peripheral having: a first function ofcarrying out a image processing according to an instruction from anapplication that operates on the information processing apparatus inaccordance with an instruction which an input section included in themultifunctional peripheral receives from a user; and a second functionof carrying out the image processing in accordance with an instructionfrom a terminal device, the method comprising: storing use historyinformation of the image processing such that the use historyinformation is associated with an execution user who carries out theimage processing, in a case where the image processing is carried outusing the second function, the image processing being carried out whilea user designated by the terminal device is set as an execution user whocarries out the image processing, in a case where the image processingis carried out using the first function, the image processing beingcarried out while a user inputted or designated from the input sectionis set as an execution user who carries out the image processing, and ina case where an execution user who carries out the image processing withuse of the first function or the second function has been determined asbeing a predetermined user, updating use history information which isstored in a memory and corresponds to the predetermined user inaccordance with a result of carrying out the image processing.